package org.http.request;

import java.util.Map;

/**
 * @author andy
 */
public interface Request {
    /**
     * 获取method
     * @return
     */
    String getMethod();

    /**
     * 获取uri
     * @return
     */
    String getRequestUri();

    /**
     * 获取协议
     * @return
     */
    String getProtocol();

    /**
     * 获取host
     * @return
     */
    String getHost();

    /**
     * 获取port
     * @return
     */
    int getPort();

    /**
     * content type
     * @return
     */
    String getContentType();

    /**
     * 参数
     * @return
     */
    Map<String, String> getParameters();

    /**
     * 单个参数
     * @param parameterName
     * @return
     */
    String getParameter(String parameterName);

    /**
     * header
     * @return
     */
    Map<String, String> getHeaders();

    /**
     * header
     * @param headerName
     * @return
     */
    String getHeader(String headerName);

//    List<Cookie> getCookies();
//    Session getSession();

    /**
     * 设置charSet
     * @param encoding
     */
    void setCharEncoding(String encoding);
}
